package com.yida.gwj.expend.domain.request;

import com.yida.gwj.expend.enums.BusinessAttachmentServerTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 附件信息请求参数
 *
 * @author lgp
 * @date 2023-03-21
 */
@ApiModel(description = "附件信息请求参数")
public class InsertAttachmentInfoRequest {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("业务主键")
    private Long bizId;

    @ApiModelProperty("主键")
    private Long attachmentId;

    @ApiModelProperty("上传文件名称")
    private String fileName;

    @ApiModelProperty("文件路径")
    private String fileUrl;

    @ApiModelProperty("文件类型")
    private String fileType;

    @ApiModelProperty("文件内容")
    private String content;

    @ApiModelProperty("业务标识")
    @NotBlank(message = "serverIdentification不能为空")
    private String serverIdentification;

    @ApiModelProperty("文件类型 1:图片 2:报告 3:附件 4:高拍仪")
    @NotNull(message = "type不能为空")
    private Integer type;

    /**
     * @see BusinessAttachmentServerTypeEnum
     */
    @ApiModelProperty("文件类型 1:申请报告 2:工程预算书 3:业主征求意见材料 4:维修和更新、改造方案 5:业主确认证明 6:公示照片 7:公示证明 8:申请人主体资格材料 9:维修合同 10:维修资金预付款收款收据 " +
            "11:维修工程决算书 12:维修资金结算发票收款收据 13:申请拨付报告 14:决算费用分摊清册 15:验收报告 16:申请报批表 17:使用拨付审批表")
    @NotNull(message = "serverType不能为空")
    private Integer serverType;

    public Long getBizId() {
        return bizId;
    }

    public void setBizId(Long bizId) {
        this.bizId = bizId;
    }

    public String getFileType() {
        return fileType;
    }

    public void setFileType(String fileType) {
        this.fileType = fileType;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public Integer getServerType() {
        return serverType;
    }

    public void setServerType(Integer serverType) {
        this.serverType = serverType;
    }

    public String getFileName() {
        return fileName;
    }

    public void setFileName(String fileName) {
        this.fileName = fileName;
    }

    public String getFileUrl() {
        return fileUrl;
    }

    public void setFileUrl(String fileUrl) {
        this.fileUrl = fileUrl;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getServerIdentification() {
        return serverIdentification;
    }

    public void setServerIdentification(String serverIdentification) {
        this.serverIdentification = serverIdentification;
    }

    public Long getAttachmentId() {
        return attachmentId;
    }

    public void setAttachmentId(Long attachmentId) {
        this.attachmentId = attachmentId;
    }
}
